建立一個篩選氣,然後白名單中的才可以通過

public class MessageFilter implements Filter {

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws IOException, ServletException {
        System.out.println("我是Filter,執行filterChain.doFilter(request,response)之前。");
        filterChain.doFilter(request, response);
        System.out.println("我是Filter,執行filterChain.doFilter(request,response)之後。");
    }
}

filter設定檔 與白名單設定

@Slf4j
@Configuration
public class FilterConfiguration {

    // 白名單url
    private static List<String> inclusionUrlList = new ArrayList<>();

    static {
        inclusionUrlList.add("/api/**");
    }
    // 其實上方inclusionUrlList 可以透過Inject 系統互動/資料讀取等建立
    // 也可以讀取可讀取驗證請求者的權限是否可以執行

    @Bean
    public FilterRegistrationBean first() {
        FilterRegistrationBean registration = new FilterRegistrationBean(new MessageFilter());
        rregistration.addUrlPatterns(String.join(",", inclusionUrlList));
        registration.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/reg");
        return registration;
    }

}

這不是一個給新手的一個教學過程,也寫的不是很完整
希望大家多多包涵囉~

主要是給自己的一個紀錄,也分享給有需要的夥伴

這是一個心血來潮,產生的文章

若有喜歡或交流的部分都歡迎在下方留言,多多關照。

#filter







你可能感興趣的文章

[JavaScript] ES6 其他好用的新語法

[JavaScript] ES6 其他好用的新語法

[Python] Multi-Process vs Multi-Thread

[Python] Multi-Process vs Multi-Thread

Gatsby程序化產生頁面

Gatsby程序化產生頁面






留言討論